package com.gitee.qdbp.general.trade.api.personal.model;

import com.gitee.qdbp.base.annotation.DataIsolation;
import com.gitee.qdbp.base.annotation.OperateTraces;

/**
 * 用户地址更新类
 *
 * @author zhh
 * @version 180716
 */
@OperateTraces(target = "where")
@DataIsolation(enable = false)
public class PersonalAddressUpdate extends PersonalAddressBean {

    /** 版本序列号 **/
    private static final long serialVersionUID = 1L;

    /** 用户ID是否更新为空值 **/
    private Boolean userIdToNull;

    /** 标签: 如家,公司等是否更新为空值 **/
    private Boolean tagNameToNull;

    /** 联系人姓名是否更新为空值 **/
    private Boolean contactNameToNull;

    /** 性别(0.未知|1.男|2.女)是否更新为空值 **/
    private Boolean contactGenderToNull;

    /** 联系人电话是否更新为空值 **/
    private Boolean contactPhoneToNull;

    /** 地区编号(关联行政区划表)是否更新为空值 **/
    private Boolean areaCodeToNull;

    /** 地区名称(由于地区编号经常会变, 需要保存地区名称)是否更新为空值 **/
    private Boolean areaTextToNull;

    /** 乡镇或街道名称是否更新为空值 **/
    private Boolean townshipToNull;

    /** 详细地址是否更新为空值 **/
    private Boolean addressToNull;

    /** 排序值(0为默认地址)是否更新为空值 **/
    private Boolean sortIndexToNull;
    /** 排序值(0为默认地址)的增加值 **/
    private Integer sortIndexAdd;

    /** 更新操作的条件 **/
    private PersonalAddressWhere where;

    /** 判断用户ID是否更新为空值 **/
    public Boolean isUserIdToNull() {
        return userIdToNull;
    }

    /**
     * 设置用户ID是否更新为空值
     *
     * @param userIdToNull 用户ID是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setUserIdToNull(Boolean userIdToNull) {
        this.userIdToNull = userIdToNull;
    }

    /** 判断标签: 如家,公司等是否更新为空值 **/
    public Boolean isTagNameToNull() {
        return tagNameToNull;
    }

    /** 设置标签: 如家,公司等是否更新为空值 **/
    public void setTagNameToNull(Boolean tagNameToNull) {
        this.tagNameToNull = tagNameToNull;
    }

    /** 判断联系人姓名是否更新为空值 **/
    public Boolean isContactNameToNull() {
        return contactNameToNull;
    }

    /** 设置联系人姓名是否更新为空值 **/
    public void setContactNameToNull(Boolean contactNameToNull) {
        this.contactNameToNull = contactNameToNull;
    }

    /** 判断性别(0.未知|1.男|2.女)是否更新为空值 **/
    public Boolean isContactGenderToNull() {
        return contactGenderToNull;
    }

    /**
     * 设置性别(0.未知|1.男|2.女)是否更新为空值
     *
     * @param contactGenderToNull 性别(0.未知|1.男|2.女)是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setContactGenderToNull(Boolean contactGenderToNull) {
        this.contactGenderToNull = contactGenderToNull;
    }

    /** 判断联系人电话是否更新为空值 **/
    public Boolean isContactPhoneToNull() {
        return contactPhoneToNull;
    }

    /** 设置联系人电话是否更新为空值 **/
    public void setContactPhoneToNull(Boolean contactPhoneToNull) {
        this.contactPhoneToNull = contactPhoneToNull;
    }

    /** 判断地区编号(关联行政区划表)是否更新为空值 **/
    public Boolean isAreaCodeToNull() {
        return areaCodeToNull;
    }

    /** 设置地区编号(关联行政区划表)是否更新为空值 **/
    public void setAreaCodeToNull(Boolean areaCodeToNull) {
        this.areaCodeToNull = areaCodeToNull;
    }

    /** 判断地区名称(由于地区编号经常会变, 需要保存地区名称)是否更新为空值 **/
    public Boolean isAreaTextToNull() {
        return areaTextToNull;
    }

    /** 设置地区名称(由于地区编号经常会变, 需要保存地区名称)是否更新为空值 **/
    public void setAreaTextToNull(Boolean areaTextToNull) {
        this.areaTextToNull = areaTextToNull;
    }

    /** 判断乡镇或街道名称是否更新为空值 **/
    public Boolean isTownshipToNull() {
        return townshipToNull;
    }

    /** 设置乡镇或街道名称是否更新为空值 **/
    public void setTownshipToNull(Boolean townshipToNull) {
        this.townshipToNull = townshipToNull;
    }

    /** 判断详细地址是否更新为空值 **/
    public Boolean isAddressToNull() {
        return addressToNull;
    }

    /** 设置详细地址是否更新为空值 **/
    public void setAddressToNull(Boolean addressToNull) {
        this.addressToNull = addressToNull;
    }

    /** 判断排序值(0为默认地址)是否更新为空值 **/
    public Boolean isSortIndexToNull() {
        return sortIndexToNull;
    }

    /**
     * 设置排序值(0为默认地址)是否更新为空值
     *
     * @param sortIndexToNull 排序值(0为默认地址)是否更新为空值
     * @deprecated 该字段为非空字段
     */
    @Deprecated
    public void setSortIndexToNull(Boolean sortIndexToNull) {
        this.sortIndexToNull = sortIndexToNull;
    }

    /** 获取排序值(0为默认地址)的增加值 **/
    public Integer getSortIndexAdd() {
        return sortIndexAdd;
    }

    /** 设置排序值(0为默认地址)的增加值 **/
    public void setSortIndexAdd(Integer sortIndexAdd) {
        this.sortIndexAdd = sortIndexAdd;
    }

    /** 获取更新操作的条件 **/
    public PersonalAddressWhere getWhere() {
        return where;
    }

    /** 获取更新操作的条件, force=是否强制返回非空条件 **/
    public PersonalAddressWhere getWhere(boolean force) {
        if (where == null && force) {
            where = new PersonalAddressWhere();
        }
        return where;
    }

    /** 设置更新操作的条件 **/
    public void setWhere(PersonalAddressWhere where) {
        this.where = where;
    }
}